2015 Robot
The 2015 FIRST Robotics Competition (FRC) game involved stacking totes and placing them on platforms. One of the critical strategic components of the 2015 game was capturing recycling bins off a center divider. I lead the team that designed and implemented robotic arms to grab the cans early in the match.
Choosing a collection method
Once we came to the strategic assessment that acquiring the containers in the center of the field was vital to a winning strategy, we had to decide between a few options on how to do it. We had a few design requirements in mind when selecting a can burglar design
- They had to have a speed greater than potential contenders on the other alliance
- They had to securely grab the containers
- They had to fit in a very small weight allowance (~3lbs)
- They had to be usable in both the autonomous period as well as the tele-operated period
- They had to overcome the obstruction of the landfill in either period
The conceptual designs we considered were:
- A dual wedge/funnel that could be used to funnel the containers off the platform in the center of the field while pushing the landfill out of the way making space for the robot to drive forward.
- A two part arm with a tensionable hoop at the end which would bend outwards by means of pneumatics and secure the hoop around the midsection of the container by tensioning a rope around the hoop effectively grabbing the container.
- A 3-part telescoping extender pole with a pneumatically controlled hook which securely grabbed onto the opening at the top of the recycling can by clamping and hooking onto the can at three separate points.
- A two part, lightweight telescoping arm which was mounted at the base of the robot frame and grabbed the containers with a simple hook with ridges on its tip to increase its hold on the container.
Option 1 satisfied requirements 4 and 5 but were determined to be slower than other options. It was reasoned that if other options we had were faster, other teams would be able to create a faster system. Option two satisfied requirements 2, 4, 5 and depending on how it was implemented, possibly requirement one. However, due to the complexity of such a mechanism, its potential weight was deemed to exceed the weight limit. Option three had the same issue. While the initial design seemed to be quite effective in theory, it was estimated to weigh around 15 lbs for two arms. Option four was seen as the best way to satisfy all five design requirements.
Designing a hook
In designing a hook we sought to create a secure gripping method as well as address the issue of being able to use the grabber mechanism anytime during the match. We had three proposed hook designs to accomplish this as follows:
- A spring loaded hook that grabbed the container at its handle
- A spring loaded hook that could swivel in two directions allowing the container to be approached from any side which would hook onto the litter opening at the top and then pneumatically clamp down to secure its hold
- A simple hook with ridges to hook onto the opening at the top which would rely on the speed of the arm and the robot driving to secure the container
Designing the arm
When designing the arm, several issues and factors had to be considered:
- Deployment speed
- Strength and flexibility to resist torsional forces from pulling a heavy container over a long length and insulate the frame itself from any warping
- Telescoping the arm to reach the necessary length
- Weight
Solving the weight issue proved to be key to addressing the other issues. For example, we originally telescoped the arm towards the containers by using a second pneumatic cylinder. However, by relying on a tensioned rope to pull the arm out into a telescoped position as the arm deployed enabled us to get rid of the second pneumatic cylinder on each arm saving approximately 1-2 lbs. Reducing the weight also affected the deployment speed. By having a smaller mass with the same bore cylinder, we were able to impart a greater impulse on the arm, thereby increasing the speed with which it moved towards the container.